# 区块链开发应该具备的能力
那么要踏进区块链世界成为区块链世界里的弄潮儿,从事区块链开发到底需要具备什么样的能力?经过梳理和思考,我认为从事区块链开发需要具备以下三种能力。
能够正确理解区块链。了解区块链技术的基本概念,熟悉密码学、分布式、共识机制、P2P网络等技术,熟悉比特币、以太坊、超级账本等区块链技术实现原理,对区块链商业价值和应用有一定的认知。
至少熟悉一种开发语言。比如Solidity、Node.js、C++、Go等。
至少熟悉一种区块链的智能合约开发。比如以太坊、超级账本、EOS等。
关于第一点正确理解区块链,可能是大多数人的一个坎。对于大部分人来说,最难的事情是克服心理上的障碍去拥抱一个新生事物。由于区块链技术比较新,有价值的书籍和资料比较少。片面和断章取义地理解都会误导大家,如果能够在一段时间里系统学习区块链,我认为这不是一件难事。第一章区块链技术理论目的就是帮助大家跨越认知门槛。
第二点至少熟悉一种开发语言,我认为也不难。不管是Solidity还是Node.js、golang(关于golang开发会在智能合约部分详细讲解)这方面的学习资料已经非常多了,大家可以选择一种开发语言进行深入全面地学习。比如以太坊智能合约开发使用的是Solidity语言,超级账本的Fabric支持Go语言、Node.js和Java, EOS目前使用的开发语言是C++。
大部分的编程语言都是由数据类型、逻辑结构、函数等组成,只不过不同语言语法不同而已。
← 区块链很难学吗? 区块链编程需要注意的问题 →